// 对外暴露配置路由
// 常量路由
export const constantRoute = [
  {
    path: '/login',
    component: () => import('@/views/login/index.vue'),
    name: 'login', //命名路由，可以做权限管理
    meta: {
      title: '登录', //菜单标题
      hidden: true, //代表路由的标题在菜单中是否隐藏  true代表隐藏
      icon: 'Reading'
    }
  },
  {
    path: '/',
    component: () => import('@/layout/index.vue'),
    name: 'layout', //命名路由，可以做权限管理
    meta: {
      title: '', //菜单标题
      hidden: false, //代表路由的标题在菜单中是否隐藏  false代表不隐藏
      icon: 'Avatar' //菜单图标，支持element-plus全部icon
    },
    redirect: '/home',
    children: [
      {
        path: '/home',
        component: () => import('@/views/home/index.vue'),
        meta: {
          title: '首页', //菜单标题
          hidden: false,
          icon: 'HomeFilled'
        }
      }
    ]
  },

  //数据大屏
  {
    path: '/screen',
    component: () => import('@/views/screen/index.vue'),
    name: 'Screen',
    meta: {
      hidden: false,
      title: '数据大屏',
      icon: 'Platform'
    }
  },

  //测试路由
  {
    path: '/test',
    component: () => import('@/layout/index.vue'),
    name: 'test', //命名路由，可以做权限管理
    meta: {
      title: '测试', //菜单标题
      hidden: false, //代表路由的标题在菜单中是否隐藏  false代表不隐藏
      icon: 'BellFilled'
    },
    redirect: '/test/test1',
    children: [
      {
        path: '/test/test1',
        component: () => import('@/views/home/index.vue'),
        meta: {
          title: '测试一级1', //菜单标题
          hidden: false,
          icon: 'Headset'
        }
      },
      {
        path: '/test/test2',
        component: () => import('@/views/home/index.vue'),
        meta: {
          title: '测试一级2', //菜单标题
          hidden: false,
          icon: 'Headset'
        },
        redirect: '/test/test2/test3',
        children: [
          {
            path: '/test/test2/test3',
            component: () => import('@/views/home/index.vue'),
            meta: {
              title: '测试二级1', //菜单标题
              hidden: false,
              icon: 'Headset'
            }
          },
          {
            path: '/test/test2/test4',
            component: () => import('@/views/home/index.vue'),
            meta: {
              title: '测试二级2', //菜单标题
              hidden: false,
              icon: 'Headset'
            }
          }
        ]
      }
    ]
  },

  {
    path: '/404',
    component: () => import('@/views/404/index.vue'),
    name: '404', //命名路由，可以做权限管理
    meta: {
      title: '404', //菜单标题
      hidden: true,
      icon: 'Headset'
    }
  }
]

//异步路由
export const asyncRoute = [
  //权限管理
  {
    path: '/acl',
    component: () => import('@/layout/index.vue'),
    name: 'Acl',
    meta: {
      title: '权限管理',
      hidden: false,
      icon: 'Lock'
    },
    redirect: '/acl/user',
    children: [
      {
        path: '/acl/user',
        component: () => import('@/views/acl/user/index.vue'),
        name: 'User',
        meta: {
          title: '用户管理',
          hidden: false,
          icon: 'User'
        }
      },
      {
        path: '/acl/role',
        component: () => import('@/views/acl/role/index.vue'),
        name: 'Role',
        meta: {
          title: '角色管理',
          hidden: false,
          icon: 'Film'
        }
      },
      {
        path: '/acl/permission',
        component: () => import('@/views/acl/permission/index.vue'),
        name: 'Permission',
        meta: {
          title: '菜单管理',
          hidden: false,
          icon: 'SetUp'
        }
      }
    ]
  },
  //商品管理
  {
    path: '/product',
    component: () => import('@/layout/index.vue'),
    name: 'Product',
    meta: {
      title: '商品管理',
      icon: 'Goods'
    },
    redirect: '/product/trademark',
    children: [
      {
        path: '/product/trademark',
        component: () => import('@/views/product/trademark/index.vue'),
        name: 'Trademark',
        meta: {
          title: '品牌管理',
          icon: 'ShoppingCartFull'
        }
      },
      {
        path: '/product/attr',
        component: () => import('@/views/product/attr/index.vue'),
        name: 'Attr',
        meta: {
          title: '属性管理',
          icon: 'ChromeFilled'
        }
      },
      {
        path: '/product/spu',
        component: () => import('@/views/product/spu/index.vue'),
        name: 'Spu',
        meta: {
          title: 'SPU管理',
          icon: 'Calendar'
        }
      },
      {
        path: '/product/sku',
        component: () => import('@/views/product/sku/index.vue'),
        name: 'Sku',
        meta: {
          title: 'SKU管理',
          icon: 'Orange'
        }
      }
    ]
  }
]

//任意路由
export const anyRoute = [
  {
    //任意路由
    path: '/:pathMatch(.*)*',
    redirect: '/404',
    name: 'Any',
    meta: {
      title: '任意路由', //菜单标题
      hidden: true,
      icon: 'Headset'
    }
  }
]
